package com.dubbo.service.base;

import java.io.Serializable;
import java.util.List;


/**
 * 通用mapper自定义方法
 * @author chenwei
 * @date 2018年2月26日 下午12:00:28
 * @param <T>
 */
public interface BaseService<T> {
	
	/** 选择性添加 */
	void insertSelective(T entity);
	
	/** 选择性修改 */
	void updateSelective(T entity);
	
	/** 根据主键id删除 */
	void delete(Serializable id);
	
	/** 批量删除 */
	void deleteBatch(String idField, Serializable[] ids);
	
	/** 根据主键id查询 */
	T selectOne(Serializable id);
	
	/** 根据全部 */
	List<T> selectAll();
	
	/** 等于号条件查询 */
	List<T> selectByWhere(T entity);
	
	/** 分页查询 */
	List<T> selectByPage(Integer pageNum, Integer pageSize);
	
	/** 等于号条件统计查询  */
	Integer countByWhere(T entity);
	
}
